//
//  YCCollectionViewLayout.h
//  瀑布流
//
//  Created by 朱永超 on 2017/3/14.
//  Copyright © 2017年 zyc. All rights reserved.
//

#import <UIKit/UIKit.h>
@class YCCollectionViewLayout;
@protocol  YCCollectionViewLayoutdelegate <NSObject>
//计算item高度的代理方法，将item的高度与indexPath传递给外界
-(CGFloat)allocCollectionViewLayout:(YCCollectionViewLayout *)layout itemHeightForWidth:(CGFloat)itemWidth with:(NSIndexPath *)indexPath;

@end

@interface YCCollectionViewLayout : UICollectionViewLayout
//定义列数
//总共多少列，默认是2
@property(nonatomic , assign) NSInteger cloumnCount;
// 行间距，默认是0
@property(nonatomic , assign) CGFloat rowSpacingHeight;
// 列间距，默认是0
@property(nonatomic , assign) CGFloat cloumnSpacingWidth;
//边距   section与collectionView的间距，默认是（0，0，0，0）
@property(nonatomic , assign) UIEdgeInsets borderSet;
//协议 代理，用来计算item的高度
@property(nonatomic , weak) id<YCCollectionViewLayoutdelegate>delegate;
//赋值方法
-(void)setCloumnSpacingWidth:(CGFloat)cloumnSpacingWidth rowSpacingHeight:(CGFloat)rowSpacingHeight borderSet:(UIEdgeInsets)borderSet;
//实例方法
-(instancetype)initWithCloumnCount:(NSInteger)cloumnCount;
//类方法
+(instancetype)layoutWithCloumnCount:(NSInteger)cloumnCount;
@end
